The present disclosure relates generally to information handling systems, and more particularly to a startup system for an information handling system with multiple processors.
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Some information handling systems include multiple processors. For example, in order to achieve higher port densities, performance, power efficiency, and reliability, networking devices such as switches may include multiple processors (e.g., central processing units (CPUs), network processing units (NPUs), and/or other processing units known in the art) that may be provided on route cards, line cards, and/or other networking subsystems in order to perform tasks such as layer 2 control plane processing, layer 3 control plane processing, line card processing, and/or other networking functions known in the art. In such systems, one of the processors will typically operate as the primary management interface with capabilities to manage directly attached external high speed Ethernet network connectivity, directly attached persistent storage, directly attached external serial console ports, directly attached Universal Serial Bus (USB) ports, management console connections, and/or other management functions known in the art. As such, a primary CPU may act as the designated controller for chassis management, control plane interconnection, fabric interconnection, and redundancy management. The secondary processors and the primary processor are typically connected via Ethernet ports and interconnects, and communicate using Ethernet protocols.
The structure of networking devices including the primary processor and secondary processors discussed above can result in relatively long startup times for the networking device. For example, when such a networking device is powered on or reset, the primary processor will boot up via a Basic Input Output System (BIOS) and load an operating system (OS) image while the secondary processors are held in a reset mode. After reaching the shell prompt, the primary processor may start user space networking services (e.g., a Trivial File Transfer Protocol (TFTP) server daemon) and bring the secondary processors out of reset mode sequentially. Each of the secondary processors may then start up the boot process sequentially by executing BIOS and then utilizing TFTP to download specific OS images from a predefined location that is specified by the primary processor. To ensure that the OS image is reliably downloaded, each packet that is sent using TFTP requires an acknowledgement, resulting in a relatively large latency associated with the process. Furthermore, both the TFTP sender and receiver use the Transport Control Protocol/Internet Protocol (TCP/IP) stack, which also requires acknowledgements, encapsulation, the provisioning of metadata, and other overhead, while the read/write system call nature of copying the OS image for use by the secondary processors further delays the startup of the networking device. Collectively, the time to load and execute an OS image for secondary processors such as route processors and line processors can be on the order of seconds due to the overhead of the Ethernet protocol and software protocols discussed above. For example, it has been found to take up to 30 seconds to download a 30 MB OS image for a route processor or line processor using TFTP as detailed above.
Accordingly, it would be desirable to provide an improved multi-processor system.